#ifndef CONFIG_H
#define CONFIG_H

extern "C" {
#include "spi_flash.h"
}

#define Offset_Addr 65486
//扇区大小

#pragma pack (4) /*指定按4字节对齐*/
struct baseConfig
{
    int boardType = 0;              //开发板类型 0：采集表 1：温湿度采集 2：开关控制端 3：开关被控端 4：综合端
    uint baud = 115200;             //串口波特率
    int  model = 0;                 //调试模式标志位
    char wifiName[100] = {'0'};     //wifi名
    char wifiPWD[50] = {'0'};       //wifi密码
    char serverIp[20] = {'0'};      //服务器IP地址
    uint serverPart = 0;            //服务器端口号
    char serverName[100] = {'0'};   //服务程序登录名
    char serverPWD[50] = {'0'};     //服务程序密码
};

struct DHTConfig : baseConfig
{
    int timeSpace = 1000;    //检测上传时间间隔，如果<0，表示订阅，单位ms
    uchar QOS = 0;            //信息质量
    char tempName[50] = {'0'};
    char humName[50] = {'0'};
};

struct OnOffConfig : baseConfig
{
    int timeSpace = 0;    //>=0表示发送端（控制端），如果<0表示订阅（接收端）
    uchar QOS = 0;            //信息质量
    char onOffname[50] = {'0'};
};

#pragma pack () /*取消指定对齐，恢复缺省对齐*/

class Config
{
  Config();
  baseConfig readBaseConfig()
  {
    //spi_flash_read();
  }
  void setBaseConfig(baseConfig config)
  {
    //spi_flash_write();
  }

};









#endif
